export function deep_copy(obj){
    //传入的数据不是复杂数据直接退出
    if(!obj instanceof Array || !obj instanceof Object){
        return
    }
    //传入的数据是数组则赋予一个数组，是对象则赋予一个对象
    const objValue = obj instanceof Array? [] : {}
    //遍历复杂数据中的键
    for(const key in obj){
        //忽略继承得到的属性
        if(obj.hasOwnProperty(key)){
            const value = obj[key]
            //遍历得到的属性也就是一个复杂数据则继续遍历
            if(value instanceof Array || value instanceof Object){
                objValue[key] = deep_copy(value)
            }else{
                objValue[key] = value
            }
        }
    }
    return objValue
}